-
Notifications
You must be signed in to change notification settings - Fork 141
CBG-4852 replace go2xunit with gotestsum #7754
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR replaces the go2xunit tool with gotestsum for test execution and JUnit XML report generation in both the main Jenkins pipeline and integration build scripts. The change aims to modernize the testing infrastructure and improve test reporting capabilities.
Key changes:
- Replace
go2xunitwithgotestsumfor JUnit XML generation - Simplify test execution by integrating XML output directly into test commands
- Remove manual post-processing steps for cleaning test output
Reviewed Changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| jenkins-integration-build.sh | Replaces go2xunit installation and usage with gotestsum, removes manual XML generation steps |
| Jenkinsfile | Updates main pipeline to use gotestsum for both CE and EE unit tests, simplifies test execution logic |
| .editorconfig | Adds shell script formatting configuration (unrelated to main changes) |
9a32b17 to
d9e0a27
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
26222ed to
0a23407
Compare
bbrks
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM 👍 great QoL change with the fixed "failed log output" as well
CBG-4852 replace go2xunit with gotestsum
This should prevent the errors we see where go2xunit crashes:
gotestsumto produce junit output, which is natively parsed by jenkins--suite-name-prefix--junitfile-project-nameto force jenkins to not collapse matching test results together. This isn't visible externally but just used jenkins junit pluginscriptblock to Jenkinsfile to allow capturing error codes fromshcommand as a groovy variable instead of relying on parsing an output fileNormal Jenkins integration test output (stays the same):
https://jenkins.sgwdev.com/job/SyncGatewayIntegration/91/
Example of pipeline failures (with CE/EE, like main):
https://jenkins.sgwdev.com/job/Pipeline/view/change-requests/job/PR-7766/3/
Example of integration test failure:
https://jenkins.sgwdev.com/job/gotestsum-expr/18/